package oop.controller.action.testversion;


import java.sql.SQLException;

import oop.controller.action.DefaultAction;
import oop.data.Test;
import oop.db.dao.TestDAO;
import oop.db.dao.TestVersionDAO;

import org.apache.commons.lang.StringUtils;

public class CreateTestVersionAction extends DefaultAction {

	@Override
	public void performImpl() throws Exception {
		String testIdStr = request.getParameter("testid");
		if (StringUtils.isEmpty(testIdStr)) 
		{
			error("Thiếu mã đề!");
			return;
		}
		
		long testId = Long.parseLong(testIdStr);
		Test test = TestDAO.fetchById(testId);
		String code = request.getParameter("verCode");
		if (StringUtils.isEmpty(code)) {
			error("Hãy nhập mã phiên bản!");
			return;
		}
		
		if ((code!=null)&&(test!=null)){
			try{
				TestVersionDAO.create(code, test);
			}catch (SQLException e) {
				if (e.getErrorCode()==1062){
					message("Mã "+code+" đã tồn tại");
				}else throw e;
			}
		}
		
		setNextAction("testversion.list&testid=" + testIdStr + "&tl_submit=null");
	}

}
